The present invention relates to a method and apparatus for using less reliable memory devices for temporary storage of multibit digital data.
It is often necessary to temporarily store multibit digital data during processing of that data. Memory devices are used for such storage. In general, it is imperative that the data retrieved from such memory devices be an exact replica of the data previously stored. However, in some applications, while it is highly desirable that the retrieved data be a replica of the previously stored data, it is not imperative.
One example of such an application is the processing of audio data in digital form, such as in portable CD playersxe2x80x94especially portable CD players with headphones, video camcorders, tapeless telephone answering machines or tapeless audio recorders. Such applications do not require the absolute fidelity which, for example, a computer storage device requires. In such devices, an analog audio signal is represented by a sequence of multibit digital samples, each having a binary value representing the value of the corresponding analog audio signal. Such samples may, for example, be produced by an analog-to-digital converter coupled to an analog audio signal source, or by a digital CD player. During the processing of this audio signal, the series of digital samples representing the audio signal is stored in a memory device, and later retrieved for subsequent processing.
In the applications described above, which do not require absolute fidelity of retrieved data to the previously stored data, memory devices which are not perfect, termed audio read/write memory (ARAM) devices, may be used. These less-than-perfect memory devices are less expensive than perfect memory devices. Because some infidelity in the retrieved samples is permissible, the use of such memory devices will allow for less expensive audio equipment without a noticeable degradation in performance. Prior such systems provided no handling for errors caused by data storage and retrieval errors. However, this resulted in seriously degraded performance when an error occurred. It is desirable that some way of handling errors resulting from the use of such memory devices be provided.
In accordance with principles of the present invention, a method and apparatus detects and conceals errors in stored digital samples. A multibit digital input sample is received and an error detecting code corresponding to that input sample, and having a predetermined number of bits, is calculated. Then a multibit digital storage sample is generated by substituting the error detecting code for the predetermined number of bits of the input sample. The storage sample is then stored in a memory device A previously stored sample is retrieved from the memory device and is analyzed to detect whether an error has occurred. If an error is detected, a substitute sample which conceals the error via some means, such as interpolation is produced for the retrieved sample, otherwise the retrieved sample is produced.
Apparatus incorporating this invention may use less than perfect memory devices, such as ARAMs, for storage of digital samples for which absolute fidelity is not required. This results in a lower costs, while not noticeably degrading the performance for such systems.